Only increase text field size for mysql.

Andrew Cantino 11 gadi atpakaļ
vecāks
revīzija
ac67a5de15
1 mainītis faili ar 14 papildinājumiem un 4 dzēšanām
  1. 14 4
      db/migrate/20130126080736_change_memory_to_long_text.rb

+ 14 - 4
db/migrate/20130126080736_change_memory_to_long_text.rb

@@ -1,11 +1,21 @@
1
+# PG allows arbitrarily long text fields but MySQL has default limits. Make those limits larger if we're using MySQL.
2
+
1 3
 class ChangeMemoryToLongText < ActiveRecord::Migration
2 4
   def up
3
-    change_column :agents, :memory, :text, :limit => 4294967295
4
-    change_column :events, :payload, :text, :limit => 16777215
5
+    if mysql?
6
+      change_column :agents, :memory, :text, :limit => 4294967295
7
+      change_column :events, :payload, :text, :limit => 16777215
8
+    end
5 9
   end
6 10
 
7 11
   def down
8
-    change_column :agents, :memory, :text, :limit => 65535
9
-    change_column :events, :payload, :text, :limit => 65535
12
+    if mysql?
13
+      change_column :agents, :memory, :text, :limit => 65535
14
+      change_column :events, :payload, :text, :limit => 65535
15
+    end
16
+  end
17
+
18
+  def mysql?
19
+    ActiveRecord::Base.connection.adapter_name =~ /mysql/i
10 20
   end
11 21
 end